package _a._06this_super;

public class ThisA {
    /*
        this用法1
            在构造方法中指该构造器所创建的新对象
     */
    ThisB thisB;
    public ThisA(ThisB thisB) {
        this.thisB = thisB;
    }

    /*
        this用法2
            在方法中调用该方法的对象
     */
    public void shout(){
        System.out.println("叫");
    }

    public void eat(){
        this.shout();
        System.out.println("吃");
    }

    /*
        this使用方法3
        在类本身的方法或构造器中引用该类的全局变量和方法，例如 getter setter
     */
    private String name;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }



    /*
        this只能在类中的非静态方法中使用
        静态方法和静态代码块中不能出现this

     */

}
